package com.weiqk.pmdemo.pojo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.stereotype.Component;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@ExcelTarget("Project")
@ApiModel("项目")
@Entity     // 作为hibernate 实体类
@Table(name = "PM_PROJECT")
public class Project implements Serializable {

    @ExcelProperty(value = "project_id")
    @ApiModelProperty("项目id")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "PROJECT_ID")
    private int projectId;

    @ExcelProperty(value = "project_name")
    @ApiModelProperty("项目名称")
    @Column(name = "PROJECT_NAME")
    private String projectName;

    @ExcelProperty(value = "CONSTRUCTION_DEPT_ID")
    @ApiModelProperty("建设部门id")
    @Column(name = "CONSTRUCTION_DEPT_ID")
    private int constructionDeptId;

    @ExcelProperty(value = "CONSTRUCTION_DEPT_NAME")
    @ApiModelProperty("建设部门名称")
    @Column(name = "CONSTRUCTION_DEPT_NAME")
    private String constructionDeptName;

    @ExcelProperty(value= "PROJECT_DATA")
    @ApiModelProperty("立项日期")
    @Column(name = "PROJECT_DATA")
    private Date projectData;

    @ExcelProperty(value = "BUDGET_AMOUNT")
    @ApiModelProperty("预算金额")
    @Column(name = "BUDGET_AMOUNT")
    private int budgetAmount;
//    PRINCIPAL_ID
    @ExcelProperty(value = "PRINCIPAL_ID")
    @ApiModelProperty("负责人id")
    @Column(name = "PRINCIPAL_ID")
    private int principalId;
//    PRINCIPAL_NAME
    @ExcelProperty(value = "PRINCIPAL_NAME")
    @ApiModelProperty("负责人姓名")
    @Column(name = "PRINCIPAL_NAME")
    private String principalName;
//    AUDIT_AMOUNT
    @ExcelProperty(value = "AUDIT_AMOUNT")
    @ApiModelProperty("审计金额")
    @Column(name = "AUDIT_AMOUNT")
    private int auditAmount;
//    CREATE_TIME
    @ExcelProperty(value = "CREATE_TIME")
    @Column(name = "CREATE_TIME")
    private Date createTime;
//    CREATOR_ID
    @ExcelProperty(value = "CREATOR_ID")
    @Column(name = "CREATOR_ID")
    private int creatorId;
//    CREATOR_NAME

    @ExcelProperty(value = "CREATOR_NAME")
    @Column(name = "CREATOR_NAME")
    private String creatorName;
//    UPDATE_TIME
    @ExcelProperty(value = "UPDATE_TIME")
    @Column(name = "UPDATE_TIME")
    private Date upadteTime;
//    UPDATER_ID

    @ExcelProperty(value = "CREATOR_NAME")
    @Column(name = "UPDATER_ID")
    private int upadterId;
//    UPDATER_NAME

    @ExcelProperty(value = "CREATOR_NAME")
    @Column(name = "UPDATER_Name")
    private String upadterName;
//    VALID_FLAG

    @ExcelProperty(value = "VALID_FLAG")
    @Column(name = "VALID_FLAG")
    private int validFlag;



}
